home *** CD-ROM | disk | FTP | other *** search
/ Garbo / Garbo.cdr / mac / util / psi10.sit / PSI Help < prev    next >
Encoding:
Text File  |  1989-10-25  |  30.3 KB  |  576 lines  |  [TEXT/PSIA]

  1.  
  2.       PSI     1.0/10-25-1989
  3.  
  4.       Personal System for Information Management and Retrieval
  5.  
  6.       ⌐ 1989  Markus P.J. Fromherz
  7.       p-mail: Institut fƒr Informatik der Universitèt Zƒrich
  8.               Winterthurerstr. 190
  9.               CH-8057 Zƒrich
  10.       e-mail: fromherz@ifi.unizh.ch
  11.  
  12.       This application has been written entirely in Prolog, using
  13.       LPA MacProlog¬ 2.5, a formidable product from Logic
  14.       Programming Associates Ltd., London, England. The development
  15.       and runtime software are copyright of LPA.
  16.  
  17.       My special thanks go to Christoph, Heike, Norbert, Stella
  18.       and Tony, who help me beta-testing this application.
  19.  
  20.       This text has been formatted for display in a non-
  21.       proportional font like Monaco or Courier.
  22.  
  23.  
  24. DISTRIBUTION POLICY
  25.  
  26.   Please feel free to copy PSI and give it to other Macintosh users for their
  27.   evaluation. Always include this document. I retain all rights to this
  28.   software and its documentation, which may not be sold, either separately or as
  29.   part of another product, without my written approval. This notice may not be
  30.   altered or removed.
  31.  
  32. ! PSI is free for personal use. If you decide to use PSI, please send me a post
  33.   card of your home town. This way, you may even get a free update (only by
  34.   e-mail or if you pay the transportation, i.e. disk and stamps).
  35.  
  36. ! If you intend to use PSI for commercial business or just want to become a
  37.   registered user, with the advantage of getting updates and the right to ask
  38.   for additional functionality, send whatever you think you should pay (the
  39.   equivalent of about sFr. 20 or $20), just to make sure I don╒t pay the price
  40.   for the additional effort (time, postage etc.). PSI is not free for
  41.   commercial use!
  42.  
  43.   Don╒t forget the post card!
  44.  
  45.  
  46. OVERVIEW
  47.  
  48.   PSI helps with the management and retrieval of information, which may be
  49.   bibliographic references, addresses, software, CD references etc.
  50.   Information is saved in records, in the following called cards, which are
  51.   described (defined or grouped) by schemata; a simple card description language
  52.   allows to define fields and layout. A file of information might thus be
  53.   compared to a register. Descriptors help to annotate the cards and, above all,
  54.   to quickly retrieve the information. The information of the cards may be
  55.   exported (listed or printed) in any format; a simple export description
  56.   language allows to define arbitrary print procedures. Information may also be
  57.   imported from data bases (fixed format) or files where the information is
  58.   ordered by keywords (like Refer); a simple import description language allows
  59.   to define arbitrary read procedures.
  60.  
  61.   PSI is intended to be an application for your personal data. It does not claim
  62.   to be a full-fledged data-base system. Instead, it should be easy to set up
  63.   and to use PSI. It is comparably small, versatile and useful for a broad range
  64.   of data. The search by descriptors makes retrieval fast and handy, and the
  65.   export and import capabilities are quite powerful.
  66.  
  67. ! The following help information is mainly structured by functions and their
  68.   menus and buttons. Introductions and sample sessions help experience the
  69.   functionality. If you use PSI for the first time, it may be a good idea to
  70.   load this text in PSI (or start PSI by double-clicking on this file) and try
  71.   the sample sessions while reading this text.
  72.   Wherever you are, you may select ╥Texts:Help╙ to get information about what
  73.   you are currently doing. The help facility is sensitive mainly to the active
  74.   window.
  75.  
  76.  
  77. SAMPLE FIRST SESSION
  78.  
  79.   1  Create a new file and define a new schema:
  80.    a Define a new file with ╥File:New ╔╙.
  81.    b Select ╥Schema:Schema╙ and a dialogue window ╥Schema╙ appears;
  82.      enter ╥Address╙, the name for your first schema, in the field ╥Name╙,
  83.      position the cursor to the field ╥Fields╙ and enter
  84.        Name, 3, Title, 1, "Home:", 3, Street, 3, ZIP Code, 1, City, 2
  85.      Press the button ╥Add╙ to define the schema.
  86.      You now defined a schema ╥Address╙ with the fields ╥Name╙, ╥Title╙,
  87.      ╥Street╙, ╥ZIP Code╙, and ╥City╙, and with the additional text ╥Home:╙.
  88.    c Press the button ╥Close╙ to close the window ╥Schema╙.
  89.  
  90.   2  Add and find cards of your schema:
  91.    a Select ╥Schema:Address╙ to open the dialogue window for your schema
  92.      ╥Address╙.
  93.    b Enter a sample address in the fields of the window and press the button
  94.      ╥Add╙. You now defined a new card for the schema ╥Address╙.
  95.    c Add more cards to ╥Address╙ by repeating the last step.
  96.    d Check if all fields of the window are empty (press ╥Clear╙ if not) and
  97.      press ╥Find╙. If you have entered several cards, a menu window offers all
  98.      names of the address you defined; if only one card exists, it is displayed
  99.      immediately.
  100.    e If several cards where found, you may browse through these with the ╥<<╙
  101.      and ╥>>╙ buttons.
  102.  
  103.   3  Define descriptors:
  104.    a Select ╥Schema:Descriptors╙ to open the descriptor-handling window. Enter
  105.      descriptors (like ╥relative╙, ╥friend╙, ╥business partner╙), pressing ╥Add╙
  106.      or the Return key after each term.
  107.    b Press ╥Show╙ to see your descriptors (and ╥Okay╙ when you╒ve seen enough).
  108.    c Press ╥Close╙ to close the window.
  109.  
  110.   4  Describe your cards:
  111.    a Back in the ╥Address╙ window, find and display one of your addresses as you
  112.      did before. (The ╥Modify╙ button should not be dimmed.)
  113.    b Press ╥Descriptors╙, select one or more fitting descriptors for the current
  114.      address and press ╥Okay╙. (Note the term(s) appearing on the ╥Descriptors╙
  115.      line. The current address has been annotated (or indexed) with these
  116.      terms.)
  117.    c Press ╥Modify╙ to replace the old address by the new one. (The entries in
  118.      the window are in turn replaced by the old values, i.e. the window
  119.      represents the old address.)
  120.    d Annotate and modify all your addresses in the same way.
  121.  
  122.   5  Find cards by templates and descriptors:
  123.    a You may now look for addresses in a more sophisticated way. Fill in one or
  124.      more fields, e.g. type a name in the ╥Name╙ field and press ╥Find╙ (or hit
  125.      the Return key). You may also just type the beginning of a name followed by
  126.      ╥*╙, or the end of a name preceded by ╥*╙. (You thus define a template for
  127.      the addresses you look for.)
  128.    b You may also specify groups of addresses you look for by selecting one or
  129.      more descriptors (press ╥Descriptors╙ and select in the menu window). All
  130.      cards with are indexed by at least these terms will be found.
  131.    c You may search for cards by combining address template and descriptors.
  132.    d Instead of pressing ╥Find╙, you may press ╥List╙ to print all matching
  133.      addresses.
  134.  
  135.   6  Define export and import procedures:
  136.      (See below on how to define export procedures to list your addresses
  137.      differently, as well as how to define import procedures to read addresses
  138.      from other files. Also look at the examples that accompany PSI.)
  139.  
  140.   7  Save your information:
  141.      You may save you data with ╥File:Save╙ and quit with ╥File:Quit╙.
  142.  
  143.  
  144. FUNCTIONS
  145.  
  146. Ñ File
  147.  
  148.   Ñ New ╔:
  149.       Create new information file.
  150.  
  151.   Ñ Open ╔:
  152.       Load information file. Since only one such file can be loaded, you are
  153.       asked if the current file is to be saved (if it has been changed).
  154.  
  155.   Ñ Save:
  156.       Save the current file.
  157.  
  158.   Ñ Save as ╔:
  159.       Save the current file with a different name and/or in a different folder
  160.       or volume.
  161.  
  162.   Ñ Add ╔:
  163.       Add schemata, cards, export/import procedures and/or descriptors of other
  164.       PSI documents.
  165.       You are presented with the names of all schemata of the selected file and
  166.       the entry ╥All Descriptors╙. Select the items you want to add (from).
  167.  
  168.       Subsequently and for each schema to add, you are presented with a dialogue
  169.       window to choose in which way the schema is to be added. There you can
  170.       choose to add or ignore the new cards, to add the schema definition resp.
  171.       replace the existing schema definition by the new one or not, and to add
  172.       the new export/import procedures, replace the existing ones, or ignore the
  173.       new ones. Finally, you can also choose the name which the schema to be
  174.       added should have in the existing file. If this name already exists, the
  175.       chosen items are added to or replacing the existing items as you chose it.
  176.       NOTE that you can only add a schema (or its cards or procedures) to an
  177.       existing one if the number of fields match.
  178.       New descriptors describing the added cards are automatically added to the
  179.       list of descriptors.
  180.       If you select ╥All Descriptors╙, all descriptors of the chosen file are
  181.       added to the current descriptors.
  182.       NOTE that only schemata of PSI Text documents (option Text file type)
  183.       can be added, i.e. you first have to save a PSI document as PSI Text file
  184.       before you can add from it (see also CONDITIONS and ╥File:Options ╔╙).
  185.  
  186.   Ñ Options ╔:
  187.       Set options for PSI.
  188.       Buttons:
  189.        Card: Set the card window that is to be shown when loading the current
  190.         file. You may choose one of the schemata or ╥- No card -╙. If you
  191.         select a schema, the schema╒s card window is opened automatically
  192.         whenever this file is loaded.
  193.        Log: Set the log file to a file or a window. By default, it set to the
  194.         window ╥Log╙. (╥Reset╙ restores this setting.)
  195.        Write log (radio button): Switch logging on or off.
  196.        File type: Can be either Code or Text. This is automatically set when
  197.         loading a PSI document, and the file will be saved with the same type,
  198.         unless you set it differently in this window. PSI Code documents are
  199.         larger, but can be loaded and saved much faster than PSI Text documents.
  200.        Eval. space: May be increased when dealing with large files. When, say,
  201.         searching or sorting large amounts of cards, you may get the message
  202.         ╥No more memory available╙; you may then increase the evaluation space.
  203.         The number to the right indicates the maximum amount by which the
  204.         evaluation space may be increased. NOTE that since free space may be
  205.         segmented, it is possible that only a part of the memory indicated is
  206.         available. No change will happen in this case. NOTE that the larger the
  207.         application size, the larger the possible evaluation space. You may not
  208.         set an evaluation space of less than 24K. The default is 200K. NOTE
  209.         that you have to close all dialogue windows for the change to come into
  210.         effect.
  211.        Save: The current option settings are written to a file called
  212.         ╥PSI Options╙. Next time you start PSI, the settings of this file are
  213.         used. You may have several such option files and start PSI with them to
  214.         use their options.
  215.        Okay: Close the options window.
  216.  
  217.   Ñ Quit:
  218.       Quit PSI. If your file has been changed, you are asked if you
  219.       want to save it.
  220.  
  221. Ñ Schema
  222.  
  223.   Ñ Schema:
  224.       Define, modify, delete, or find a schema for your cards (or records). A
  225.       schema has a name, an optional command which appears in the menu, fields,
  226.       optional export procedures and optional import procedures.
  227.       The name of the schema can be anything. The command must be one character.
  228.       The fields have the format ╥Name1, Position1, Name2, Position2, ╔╙, i.e.
  229.       each field has a name and a position, all separated by ╥,╙.
  230.       The field name can be anything, except that it should not begin
  231.       with ╥/╙, ╥(╙, ╥[╙, ╥{╙, or ╥"╙. The position which will be the position
  232.       in its window must be a positive integer. 1 means a short edit field left,
  233.       2 a short edit field right, and 3 a long edit field; all increments of 3
  234.       to these positions denote the same width, but more lines. (For instance,
  235.       5 means two short lines right.) Thus, almost all combinations of window
  236.       positions are possible.
  237.       NOTE that PSI does not distinguish key fields, but offers the first
  238.       field whenever you have to select among several cards. Therefore, it is
  239.       advisable to define a prominent field as the first one.
  240.       You may also specify text that is to be printed on the card window,
  241.       writing ╥"Text"╙ (i.e., ╥"╙, your text, and again ╥"╙) instead of a field
  242.       name, and using the same positioning policies. If the Text contains two
  243.       items separated by ╥,╙, the first is written at the field name╒s place,
  244.       the second at the edit╒s place. Otherwise, the Text uses the whole length
  245.       of name and edit field. You may also structure your card window layout
  246.       with ""╒s in you schema definition. An example was in the sample first
  247.       session.
  248.       Export and import can be defined and set by ╥Export/Import╙ (see this
  249.       button). The fields ╥Export╙ and ╥Import╙ reflect the procedures currently
  250.       associated with this schema (currently active).
  251.       Buttons:
  252.        Add: Add the schema currently defined in the window.
  253.        Modify: Replace the schema with this name by the one currently defined
  254.         in the window. In case you change the fields (names or order), there are
  255.         two possibilities: Either you just change the names, i.e. the cards of
  256.         this schema are not affected. Or you change the order of the fields, add
  257.         new ones and/or remove old ones. In the second case, the field values of
  258.         all cards of this schema are rearranged.
  259.         NOTE that you cannot rename and re-order/add/delete fields at the same
  260.         time.
  261.         You may change the name of a schema by giving it a new name and pressing
  262.         ╥Modify╙. You are then asked which schema╒s name you want to replace.
  263.         NOTE that for all modifications involving the schema name or the
  264.         fields╒ number or order, the cards are modified, too.
  265.        Delete: Delete the schema with this name. If cards for this schema
  266.         exist, you are asked if you really want to delete them.
  267.        Find (Return key): Find the schema with this name. If a schema with this
  268.         name could not be found, a scroll menu offers all schemata (except if
  269.         there is only one, which is filled in immediately).
  270.        Clear: Clear the edit fields of this window.
  271.        Close: Close the schema window. In case you didn╒t update your
  272.         changes, you are asked if it is okay to discard the current
  273.         schema definition (i.e., the one in the window).
  274.  
  275.        Export/Import: Get the export/import window for the current schema.
  276.         An export or import procedure is defined by a name and a procedure
  277.         written in a special description format. This procedure can use the
  278.         schema fields, special keywords, or normal text. It is also possible to
  279.         specify alternatives and loops. All these items must be separated by
  280.         ╥,╙, alternatives (also in loops) by ╥;╙.
  281.         Instead of writing the full field name, it is sufficient to write just
  282.         the beginning of its name (should be disambiguous). PSI is first looking
  283.         for an exact match. If none is found, it looks for the first field
  284.         beginning with the name you wrote. SINCE only the first 255 characters
  285.         of an edit field can be read, it is strongly suggested that you use this
  286.         option, and thus avoid overflow if you have long procedures. NOTE also
  287.         that ╥D╙ stands for the descriptors of a card.
  288.         You can define several export and import procedures, of which at most
  289.         one can be active (see button ╥Use╙).
  290.         NOTE that for the procedure definition, the field list of the existing
  291.         schema is taken. Only if the current schema of the schema window is not
  292.         yet defined (added) is its current field list taken. Avoid ╥)╙, ╥]╙
  293.         or ╥}╙ in field names appearing in alternatives or loops; they have a
  294.         special meaning.
  295.  
  296.         EXPORT: Format, Format, ╔
  297.  
  298.         Format                  prints
  299.         ------                  ------
  300.         FieldName               value of FieldName
  301.         /eNFieldName            Nth element of list FieldName (0,1,╔)
  302.         D                       the descriptors, separated by ╥,╙
  303.         /eND                    Nth element of the descriptors (0,1,╔)
  304.         "Text"                  Text
  305.         /s                      1 space
  306.         /sN                     N spaces
  307.         /t                      1 tab
  308.         /tN                     N tabs
  309.         /n                      1 new line
  310.         /nN                     N new lines
  311.         /l                      1 line feed
  312.         /lN                     N line feeds
  313.         (Format1,Format2,R;F)   R if Format1 = Format2, else do (F)
  314.                                 (Formatx should be field, descriptor or text)
  315.         (Format1,\Format2,R;F)  R if Format1 # Format2, else do (F)
  316.                                 (Formatx should be field, descriptor or text)
  317.         [Format1,R;F]           R if Format1 is not empty, else do [F]
  318.                                 (i.e. like ╥(Format1,\"",R;F)╙)
  319.         {Format,R}              R for all elements of list Format (field or D)
  320.                                 (all reference to Format within R references
  321.                                  the current element of Format)
  322.         {Format,R;B;L}          (R,B) for all elements of list Format except
  323.                                 for the last two, R for the last but one
  324.                                 element, L for the last one;
  325.                                 R if Format contains only one element
  326.                                 (thus, B may be the text between the elements
  327.                                  as in ╥{D, D; ", "; " and ",D}╙;
  328.                                  all reference to Format within R references
  329.                                  the current element of Format)
  330.  
  331.       ! Sample export procedure:
  332.           Assume the schema of the sample first session (see above) with cards
  333.           like     Name      Murphy, Eddie
  334.                    Title 
  335.                    Home:
  336.                    Street    Famous Street, Beverly Hills
  337.                    ZIP Code  77001                 City: Los Angeles, CA
  338.           To list the addresses as address labels:
  339.              [Title, Title,/s], /e1Name,/s,/e0Name,/n, {Street, Street,/n,},
  340.              City,", ",ZIP Code,/n2
  341.           meaning, if the Title is not empty, print the Title and a space, then
  342.           print the first Name, a space, the last Name and a new line,
  343.           then for each element in the list of streets (separated by ╥,╙), print
  344.           it on an extra line (print nothing if it is empty),
  345.           then print the City, ╥, ╙, the ZIP Code and twice new line.
  346.           Thus, the selected addresses are listed like
  347.             Eddie Murphy
  348.             Famous Street
  349.             Beverly Hills
  350.             Los Angeles, CA, 77001
  351.  
  352.         IMPORT: Format, Format, ╔
  353.  
  354.         Format                  reads
  355.         ------                  -----
  356.         FieldName               value for Field
  357.         "Text"                  Text
  358.         /s                      till space
  359.         /t                      till tab
  360.         /n                      till new line
  361.         /l                      till line feed
  362.         -                       any text (will be ignored)
  363.         D                       descriptors (may be separated by ╥,╙)
  364.         (Format,╔;Format,╔;╔)   alternatives; each should be
  365.                                   Text, FieldName
  366.                                 (each field appears only once;
  367.                                  the alternatives should be followed
  368.                                  by /s, /t, /n, /l, or single-character
  369.                                  text)
  370.         {Format,╔;Format,╔;╔}   loop (several alternatives); each should be
  371.                                   Text, FieldName
  372.                                 (each field can be repeated;
  373.                                  the loop should be followed by two
  374.                                  of /s, /t, /n, /l, or single-character
  375.                                  text)
  376.  
  377.       ! Sample import procedures:
  378.           To read cards in Refer format, assuming ╥%N╙ stands for the last name,
  379.           ╥%F╙ for the first name, ╥%T╙ for the title, ╥%S╙ for the street,
  380.           ╥%Z╙ for the ZIP code, ╥%C╙ for the city, and ╥%K╙ for some key words:
  381.              {"%T ",Title; "%N ",Name; "%F ",Name; "%S ",Street;
  382.               "%Z ",ZIP Code; "%C ",City; "%K ",D},/n,/n
  383.           meaning, read a line (i.e. till new line), and if this line starts
  384.           with ╥%N ╙, add the rest to Name, if it start with ╥%F ╙, ╔ and so on;
  385.           stop at an empty new line (the second ╥/n╙). Field names may appear
  386.           more than once (like ╥Name╙); they are all added up. It is possible to
  387.           have more items in one loop alternative, meaning that the line is put
  388.           together from these items.
  389.           
  390.           To read cards in a fixed format (as it often comes from data bases),
  391.           assuming that the fields are separated by tabs and one record is
  392.           separated by a new line from the next one:
  393.              Title, /t, Name, /t, Street, /t, ZIP Code, /t, City, /n
  394.           Note that here and so far, you cannot have a field name appear more
  395.           than once, i.e. fields can only be added up in loops.
  396.         Buttons:
  397.          Export - Import (radio button): Work on export or import procedures,
  398.           i.e. type is either export or import.
  399.          Add (Return key): Add the currently defined procedure as procedure of
  400.           the current type. 
  401.          Modify: Modify the procedure with the current name and of the current
  402.           type by the currently defined procedure.
  403.          Delete: Delete procedures of the current type from those offered in a
  404.           scroll menu.
  405.          Show: Show the procedures of the current type in a scroll menu. The
  406.           one selected is brought to the window.
  407.          List: List all procedures of the current type.
  408.          Use: Define procedure of the current name and type as current
  409.           procedure of the schema. Also close the window (see also button
  410.           ╥Close╙).
  411.          Close: Close the export/import window. In case the text in the
  412.           procedure definition field is not a procedure of the current schema,
  413.           you are asked if it is okay to discard it. NOTE that all export/import
  414.           modifications are made permanent instantly for the current schema,
  415.           so you don╒t need to modify the schema for these procedures.
  416.  
  417.   Ñ Descriptors:
  418.       Define and delete descriptors (global descriptor list).
  419.       Buttons:
  420.        Add (Return key): Add the current descriptor. The text in the edit field
  421.         is cleared so that you can enter several descriptors conveniently.
  422.        Modify: Replace another descriptor that is to be selected afterwards by
  423.         the current one. NOTE that the descriptor is also replaced in all
  424.         cards it describes.
  425.        Delete: Delete descriptors from those offered in a scroll menu. NOTE
  426.         that the descriptors are also removed from all cards they described.
  427.        Show: Show the descriptors in a scroll menu. The one selected is brought
  428.         to the window.
  429.        List: List all descriptors.
  430.        Close: Close the descriptors window.
  431.  
  432.   Ñ YourSchema:
  433.       Define, modify, delete, or find cards of this schema. A card consists of
  434.       the values of the schema╒s fields, and of the descriptors it has been
  435.       annotated with.
  436.       A field value can be any term. Its length should not exceed 255.
  437.       If a field value contains commas, the value can be treated as a list, i.e.
  438.       the terms separated by the commas can be addressed individually when
  439.       exporting the value.
  440.       The field ╥Descriptors╙ reflects the descriptors currently associated with
  441.       this card.
  442.       Buttons:
  443.        Add: Add the card currently defined in the window.
  444.        Modify: Replace the current card by the card currently defined in the
  445.         window. The current card is the one last found with Find or accessed
  446.         with Next or Previous, i.e. the Modify operation is only available after
  447.         a Find operation. (This button is alternating with the ╥Pattern╙
  448.         button.) NOTE that after the modification, the OLD card is displayed in
  449.         the card window.
  450.        Delete: Delete the cards that match the card currently defined in the
  451.         window. The same matching rules as for ╥Find╙ apply. If more than one
  452.         matching card was found, you can either delete all of them (ALL button,
  453.         Return key) or select those that are really to be deleted.
  454.        Find (Return key): Find the card which matches the card currently
  455.         defined in the window, i.e. the current card is used as template. If
  456.         more than one matching card was found, a scroll menu offers all matching
  457.         cards.
  458.         As long as you do not press any modifying button, you can browse through
  459.         the set of cards with Next and Previous. You may now modify any of the
  460.         cards you found. To get the same set of cards again after a
  461.         modification, use ╥Pattern╙ and ╥Find╙.
  462.         The match rules for field values are:
  463.           An empty field matches anything.
  464.           ╥Text*╙ matches field values that begin with Text.
  465.           ╥*Text╙ matches field values that end with Text.
  466.           ╥*Text*╙ matches field values that contain Text.
  467.           Anything else matches only terms which look exactly the same.
  468.         The match rule for descriptors is:
  469.           Cards must be described by at least the same descriptors, i.e. the
  470.           current set of descriptors has to be a subset of the descriptors of
  471.           the searched card.
  472.         NOTE that the cards are only distinguished by the first field and your
  473.         selections for the other fields and the descriptors. Therefore, if you
  474.         find a set of cards, of which several have an identical first field,
  475.         only the first card will be displayed. This is also the case for Next
  476.         and Previous.
  477.        Pattern: Recall the card pattern of the last successful Find operation.
  478.         (This button is alternating with the ╥Modify╙ button, i.e. if you want
  479.         to recall the Find pattern directly after a Find operation, you first
  480.         have to press, for example, Clear.)
  481.        >> (Next): Get the next card that matches the settings of the last Find
  482.         operation. The set of cards you go through is exactly the set you were
  483.         presented with after the last Find operation.
  484.        << (Previous): Like Next, but get the previous card.
  485.        Descriptors: Describe (annotate) the current card with descriptors by
  486.         selecting them from the list offered in the scroll menu. (The
  487.         descriptors to be used must be defined by ╥Schema: Descriptors╙.)
  488.        List: List the cards which match the card currently defined in the
  489.         window. The same match rules as for ╥Find╙ apply. The current export
  490.         procedure of the card╒s schema is used to list the cards. If no export
  491.         procedure is defined, a default procedure is used. You are asked whether
  492.         export should be done to a file or window. As long as you export to the
  493.         same file (long button, Return key), this file is not closed and the
  494.         listing is appended to former listings to this file. If you choose a
  495.         different export file the next time you list something, the previous
  496.         file is closed (if it is not a window). You may also close a file
  497.         explicitly by using ╥Texts:Close ExportFile╙.
  498.        Sort: Sort all cards of this schema. You can sort them by any field(s)
  499.         in any order. To indicate the order, mark the fields (fill in the edit
  500.         fields) that are relevant for your order with numbers, beginning with 1.
  501.         For example, you may choose 1 for ╥First name╙, 2 for ╥Name╙ and 3 for
  502.         ╥City╙. After pressing the button, you are asked if you want to sort in
  503.         ascending or descending order.
  504.         The sorting algorithm is most efficient for cards which are only
  505.         slightly in disorder.
  506.        Read: Import cards for the schema of the current card window. The
  507.         current import procedure of this schema is used to read the cards.
  508.         Import can be done from files or windows.
  509.        File: This button and facility is enabled only if a card field with the
  510.         reserved name File has been defined. When pressing this button, the
  511.         file whose name and path is in the respective field is loaded just like
  512.         a normal text file (see ╥Texts:Open ╔╙ and ╥Texts:Path ╔╙). Standard
  513.         Macintosh file names are assumed. If you use a relative path, i.e. just
  514.         the file name or a path beginning with ╥:╙, the path is assumed to be
  515.         relative to the home folder of the current PSI file. This allows to have
  516.         portable file names. NOTE that a text window cannot hold more than 32K
  517.         of text.
  518.        Clear: Clear the edit fields of this window. If the edit fields are
  519.         empty, clear the descriptor selection (i.e. if you click a second time).
  520.        Close: Close the card window. In case you didn╒t update your changes,
  521.         you are asked if it is okay to discard the current card (i.e., the one
  522.         in the window).
  523.  
  524. Ñ Texts
  525.   Open and close text files, select path names, activate an open window.
  526.  
  527.   Ñ New ╔:
  528.       Create a new text window.
  529.  
  530.   Ñ Open ╔:
  531.       Load a text file into a text window. NOTE that a text window cannot hold
  532.       more than 32K of text.
  533.  
  534.   Ñ Close:
  535.       Close the front text window. NOTE that if the window is an active
  536.       listing or log window, it cannot be closed.
  537.  
  538.   Ñ Close ExportFile:
  539.       Close the currently open export file. Only available if the export file
  540.       is actually a file (and not a window).
  541.  
  542.   Ñ Path ╔:
  543.       Select a path and file name by stepping through the standard file menu.
  544.       The full file name of the selected file is written to the listing window
  545.       (or file). This name can then be copied to a card╒s File field.
  546.  
  547.   Ñ Help:
  548.       Loads the PSI help file if necessary and scrolls to the information
  549.       about the current activity. The help facility is sensitive to the active
  550.       window, i.e. whenever you select ╥Help╙, you get context-sensitive help
  551.       information.
  552.  
  553.   Ñ WindowName:
  554.       Bring this window to the front.
  555.  
  556. Ñ Edit
  557.  
  558.   Ñ Cut, Copy, Paste:
  559.     Work as usual.
  560.  
  561.   Ñ Balance:
  562.     Extends the cursor to include the next outer pair of matching brackets
  563.     (╥( ) { } [ ]╙). Useful when defining export and import procedures with
  564.     alternatives and loops, but works only for text windows, i.e. you first
  565.     have to copy your procedure to a window (e.g., ╥Listing╙), and back to
  566.     the dialogue window afterwards.
  567.  
  568.   Ñ Select all:
  569.     Works only for text windows.
  570.  
  571. Ñ Fonts
  572.     Select font type and size of the front display window.
  573.  
  574.  
  575. For CONDITIONS, CONSTRAINTS, WARNINGS, AND MODIFICATIONS see ╥About PSI╙!
  576.